package qc.module.qms.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import qc.common.core.enums.qms.*;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * QmsAlarmRecord
 *
 * @author QuCheng Tech
 * @since 2025/10/20
 */
@Data
@TableName("qms_alarm_record")
public class QmsAlarmRecord implements Serializable, Cloneable {
    /**
     * 记录ID
     */
    @TableId
    private String id;
    /**
     * 告警时间;触发告警的时间
     */
    private LocalDateTime tm;
    /**
     * 告警分类;数据不合理判别、运行状态、缺数插补
     */
    private QmsAlarmCategoryEnum alarmctg;
    /**
     * 是否为测试;测试/演习
     */
    private Boolean istest;
    /**
     * 规则ID
     */
    private String ruleid;
    /**
     * 告警等级;复归/平安报、蓝黄橙红4级
     */
    private QmsAlarmLevelEnum alarmlevel;
    /**
     * 告警标题
     */
    private String title;
    /**
     * 告警信息内容
     */
    private String content;
    /**
     * 点号ID
     */
    private String pointid;
    /**
     * 点号时段类型
     */
    private QmsPointTimeSegmentEnum pointtmseg;
    /**
     * 点号时标
     */
    private LocalDateTime pointdatatm;
    /**
     * 数据值字段
     */
    private QmsPointValueFieldEnum datavaluefield;
    /**
     * 点号数据值;触发的点号数据值
     */
    private Double pointdatavalue;
    /**
     * 是否进行防误处理;当前节点的处理开始时间
     */
    private Boolean errorproof;
    /**
     * 防误处理的点号数据值;触发防误处理动作自动设置的点号数据值
     */
    private Double proofdatavalue;
    /**
     * 告警状态;新产生、已关闭
     */
    private QmsAlarmStatusEnum status;
    /**
     * 关闭操作人
     */
    private String opusername;
    /**
     * 关闭操作说明
     */
    private String opinfo;
    /**
     * 关闭操作时间
     */
    private LocalDateTime optm;
}
